/** */ package edu.ufc.femtost.disc.sysml4modelica.profile.types.impl; import edu.ufc.femtost.disc.sysml4modelica.profile.classes.ClassesPackage; import edu.ufc.femtost.disc.sysml4modelica.profile.classes.impl.ClassesPackageImpl; import edu.ufc.femtost.disc.sysml4modelica.profile.components.ComponentsPackage; import edu.ufc.femtost.disc.sysml4modelica.profile.components.impl.ComponentsPackageImpl; import edu.ufc.femtost.disc.sysml4modelica.profile.equationsandalgorithms.EquationsandalgorithmsPackage; import edu.ufc.femtost.disc.sysml4modelica.profile.equationsandalgorithms.impl.EquationsandalgorithmsPackageImpl; import edu.ufc.femtost.disc.sysml4modelica.profile.other.OtherPackage; import edu.ufc.femtost.disc.sysml4modelica.profile.other.impl.OtherPackageImpl; import edu.ufc.femtost.disc.sysml4modelica.profile.sysml4modelica.Sysml4modelicaPackage; import edu.ufc.femtost.disc.sysml4modelica.profile.sysml4modelica.impl.Sysml4modelicaPackageImpl; import edu.ufc.femtost.disc.sysml4modelica.profile.types.ModelicaCausalityKind; import edu.ufc.femtost.disc.sysml4modelica.profile.types.ModelicaFlowFlagKind; import edu.ufc.femtost.disc.sysml4modelica.profile.types.ModelicaScopeKind; import edu.ufc.femtost.disc.sysml4modelica.profile.types.ModelicaStateSelect; import edu.ufc.femtost.disc.sysml4modelica.profile.types.ModelicaVariabilityKind; import edu.ufc.femtost.disc.sysml4modelica.profile.types.TypesFactory; import edu.ufc.femtost.disc.sysml4modelica.profile.types.TypesPackage; import org.eclipse.emf.ecore.EEnum; import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.impl.EPackageImpl; import org.eclipse.papyrus.sysml.SysmlPackage; /** * <!-- begin-user-doc --> * An implementation of the model <b>Package</b>. * <!-- end-user-doc --> * @generated */ public class TypesPackageImpl extends EPackageImpl implements TypesPackage { /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EEnum modelicaFlowFlagKindEEnum = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EEnum modelicaCausalityKindEEnum = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EEnum modelicaVariabilityKindEEnum = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EEnum modelicaStateSelectEEnum = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EEnum modelicaScopeKindEEnum = null; /** * Creates an instance of the model <b>Package</b>, registered with * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package * package URI value. * <p>Note: the correct way to create the package is via the static * factory method {@link #init init()}, which also performs * initialization of the package, or returns the registered package, * if one already exists. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see org.eclipse.emf.ecore.EPackage.Registry * @see edu.ufc.femtost.disc.sysml4modelica.profile.types.TypesPackage#eNS_URI * @see #init() * @generated */ private TypesPackageImpl() { super(eNS_URI, TypesFactory.eINSTANCE); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private static boolean isInited = false; /** * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. * * <p>This method is used to initialize {@link TypesPackage#eINSTANCE} when that field is accessed. * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #eNS_URI * @see #createPackageContents() * @see #initializePackageContents() * @generated */ public static TypesPackage init() { if (isInited) return (TypesPackage)EPackage.Registry.INSTANCE.getEPackage(TypesPackage.eNS_URI); // Obtain or create and register package TypesPackageImpl theTypesPackage = (TypesPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof TypesPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new TypesPackageImpl()); isInited = true; // Initialize simple dependencies SysmlPackage.eINSTANCE.eClass(); // Obtain or create and register interdependencies Sysml4modelicaPackageImpl theSysml4modelicaPackage = (Sysml4modelicaPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(Sysml4modelicaPackage.eNS_URI) instanceof Sysml4modelicaPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(Sysml4modelicaPackage.eNS_URI) : Sysml4modelicaPackage.eINSTANCE); ClassesPackageImpl theClassesPackage = (ClassesPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ClassesPackage.eNS_URI) instanceof ClassesPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ClassesPackage.eNS_URI) : ClassesPackage.eINSTANCE); ComponentsPackageImpl theComponentsPackage = (ComponentsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ComponentsPackage.eNS_URI) instanceof ComponentsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ComponentsPackage.eNS_URI) : ComponentsPackage.eINSTANCE); EquationsandalgorithmsPackageImpl theEquationsandalgorithmsPackage = (EquationsandalgorithmsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(EquationsandalgorithmsPackage.eNS_URI) instanceof EquationsandalgorithmsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(EquationsandalgorithmsPackage.eNS_URI) : EquationsandalgorithmsPackage.eINSTANCE); OtherPackageImpl theOtherPackage = (OtherPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(OtherPackage.eNS_URI) instanceof OtherPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(OtherPackage.eNS_URI) : OtherPackage.eINSTANCE); // Create package meta-data objects theTypesPackage.createPackageContents(); theSysml4modelicaPackage.createPackageContents(); theClassesPackage.createPackageContents(); theComponentsPackage.createPackageContents(); theEquationsandalgorithmsPackage.createPackageContents(); theOtherPackage.createPackageContents(); // Initialize created meta-data theTypesPackage.initializePackageContents(); theSysml4modelicaPackage.initializePackageContents(); theClassesPackage.initializePackageContents(); theComponentsPackage.initializePackageContents(); theEquationsandalgorithmsPackage.initializePackageContents(); theOtherPackage.initializePackageContents(); // Mark meta-data to indicate it can't be changed theTypesPackage.freeze(); // Update the registry and return the package EPackage.Registry.INSTANCE.put(TypesPackage.eNS_URI, theTypesPackage); return theTypesPackage; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EEnum getModelicaFlowFlagKind() { return modelicaFlowFlagKindEEnum; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EEnum getModelicaCausalityKind() { return modelicaCausalityKindEEnum; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EEnum getModelicaVariabilityKind() { return modelicaVariabilityKindEEnum; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EEnum getModelicaStateSelect() { return modelicaStateSelectEEnum; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EEnum getModelicaScopeKind() { return modelicaScopeKindEEnum; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public TypesFactory getTypesFactory() { return (TypesFactory)getEFactoryInstance(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private boolean isCreated = false; /** * Creates the meta-model objects for the package. This method is * guarded to have no affect on any invocation but its first. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void createPackageContents() { if (isCreated) return; isCreated = true; // Create enums modelicaFlowFlagKindEEnum = createEEnum(MODELICA_FLOW_FLAG_KIND); modelicaCausalityKindEEnum = createEEnum(MODELICA_CAUSALITY_KIND); modelicaVariabilityKindEEnum = createEEnum(MODELICA_VARIABILITY_KIND); modelicaStateSelectEEnum = createEEnum(MODELICA_STATE_SELECT); modelicaScopeKindEEnum = createEEnum(MODELICA_SCOPE_KIND); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private boolean isInitialized = false; /** * Complete the initialization of the package and its meta-model. This * method is guarded to have no affect on any invocation but its first. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void initializePackageContents() { if (isInitialized) return; isInitialized = true; // Initialize package setName(eNAME); setNsPrefix(eNS_PREFIX); setNsURI(eNS_URI); // Initialize enums and add enum literals initEEnum(modelicaFlowFlagKindEEnum, ModelicaFlowFlagKind.class, "ModelicaFlowFlagKind"); addEEnumLiteral(modelicaFlowFlagKindEEnum, ModelicaFlowFlagKind.NONE); addEEnumLiteral(modelicaFlowFlagKindEEnum, ModelicaFlowFlagKind.FLOW); addEEnumLiteral(modelicaFlowFlagKindEEnum, ModelicaFlowFlagKind.STREAM); initEEnum(modelicaCausalityKindEEnum, ModelicaCausalityKind.class, "ModelicaCausalityKind"); addEEnumLiteral(modelicaCausalityKindEEnum, ModelicaCausalityKind.NONE); addEEnumLiteral(modelicaCausalityKindEEnum, ModelicaCausalityKind.INPUT); addEEnumLiteral(modelicaCausalityKindEEnum, ModelicaCausalityKind.OUTPUT); initEEnum(modelicaVariabilityKindEEnum, ModelicaVariabilityKind.class, "ModelicaVariabilityKind"); addEEnumLiteral(modelicaVariabilityKindEEnum, ModelicaVariabilityKind.CONTINUOUS); addEEnumLiteral(modelicaVariabilityKindEEnum, ModelicaVariabilityKind.CONSTANT); addEEnumLiteral(modelicaVariabilityKindEEnum, ModelicaVariabilityKind.PARAMETER); addEEnumLiteral(modelicaVariabilityKindEEnum, ModelicaVariabilityKind.DISCRETE); initEEnum(modelicaStateSelectEEnum, ModelicaStateSelect.class, "ModelicaStateSelect"); addEEnumLiteral(modelicaStateSelectEEnum, ModelicaStateSelect.ALWAYS); addEEnumLiteral(modelicaStateSelectEEnum, ModelicaStateSelect.NEVER); addEEnumLiteral(modelicaStateSelectEEnum, ModelicaStateSelect.PREFER); addEEnumLiteral(modelicaStateSelectEEnum, ModelicaStateSelect.AVOID); addEEnumLiteral(modelicaStateSelectEEnum, ModelicaStateSelect.DEFAULT); initEEnum(modelicaScopeKindEEnum, ModelicaScopeKind.class, "ModelicaScopeKind"); addEEnumLiteral(modelicaScopeKindEEnum, ModelicaScopeKind.NONE); addEEnumLiteral(modelicaScopeKindEEnum, ModelicaScopeKind.INNER); addEEnumLiteral(modelicaScopeKindEEnum, ModelicaScopeKind.OUTER); addEEnumLiteral(modelicaScopeKindEEnum, ModelicaScopeKind.INNER_OUTER); } } //TypesPackageImpl